"""
文件读写
    概述：
        读： 读取文件 ，从文件获取内容
             .py   .txt 文件会自动解码

        写： 修改文件内容
    格式：
        对象名 = open(路径,'mode',encoding='编码方式'))

    操作模式： mode
        r: 只读 ， 文件不存在就报错 默认就是只读
        w: 只写，  文件不存在就创建
        r+: 读写   文件不存在报错
        w+: 写读   文件不存在就创建
        a : 追加    文件不存在就创建
        a+: 追加读     文件不存在就创建
    encoding 编码格式
        Linux系统 默认是UTF-8 ， Window 默认是GBK

    读取文件的相关方法
        read() 读取文件中的所有内容
        read(num)  读取指定字符数
        readline() 读取一行


"""

#1. 打开文件
# file = open('file/a.txt','r',encoding='utf-8')
# print(file)

# 读取文件
# print(file.read()) # 读取文件全部内容
# print(file.read(3)) # 读取三个字符
# print(file.readline()) # 读取一行

# 释放文件
# file.close()

# file = None
# try:
#     file = open('file/b.txt', 'r', encoding='utf-8')
#     # a = 5
#     # b = a / 0
#     print('aaaaaa')
#     print(file.read())
# except Exception as e:
#     print('出现异常了')
#     print(e)
# finally:
#     if(file is not None):
#         file.close()
#     print('释放资源了')

# Python 简化了读取文件时的 try-finally的写法
# 当with 代码块全部执行完成后，无论是否发生了异常，都会自动的调用 close方法释放资源
with open('file/a.txt','r',encoding='utf-8') as f:
    print(f.read())

# 当代码指定到离开 缩进区自动调用close方法